// 用户地址表
module.exports = app => {
  const DataTypes = app.Sequelize;

  const Model = app.model.define('address', {
    id: {
      type: DataTypes.INTEGER(8).UNSIGNED,
      allowNull: false,
      primaryKey: true,
      autoIncrement: true,
    },
    // 收货人姓名
    name: {
      type: DataTypes.STRING(50),
      allowNull: false,
      defaultValue: '',
    },
    // 收货人性别
    gender: {
      type: DataTypes.INTEGER(1).UNSIGNED,
      allowNull: false,
      defaultValue: '1',
    },
    // 用户ID
    user_id: {
      type: DataTypes.STRING(50),
      allowNull: false,
      defaultValue: '0',
    },
    // 省名
    address: {
      type: DataTypes.STRING(120),
      allowNull: false,
      defaultValue: '',
    },
    // 手机号
    mobile: {
      type: DataTypes.STRING(60),
      allowNull: false,
      defaultValue: '',
    },
    // 是否是默认地址
    is_default: {
      type: DataTypes.INTEGER(1).UNSIGNED,
      allowNull: false,
      defaultValue: '0',
    },
    // 地址名称-eg-天府软件园
    address_name: {
      type: DataTypes.STRING(120),
      allowNull: false,
      defaultValue: '',
    },
    // 详细地址-eg-天府大道一号
    address_detail: {
      type: DataTypes.STRING(120),
      allowNull: false,
      defaultValue: '',
    },
    // 地址详细描述-eg-c区3-11.
    address_description: {
      type: DataTypes.STRING(120),
      allowNull: false,
      defaultValue: '',
    },
    lng: {
      type: DataTypes.DECIMAL()  ,
      allowNull: false,
      defaultValue: '',
    },
    lat: {
      type: DataTypes.DECIMAL(),
      allowNull: false,
      defaultValue: '',
    },
    // is_delete: {
    //   type: DataTypes.INTEGER(1).UNSIGNED,
    //   allowNull: false,
    //   defaultValue: '0',
    //   comment: '是否删除，0->存在，1->删除'
    // },
    shop_id: {
      type: DataTypes.INTEGER(11),
      allowNull: true,
      defaultValue: null,
      comment: '商家ID，预留SASS功能',
    },
  }, {
    tableName: 'address',
    timestamps: false,
  });
  Model.sync({ alert: true });
  Model.associate = function() {

  };
  return Model;
};
